1. T : Type
2. T List
3. u : T 4. v : T List
5. x, y:T.
5. no_repeats(T;v) adjacent(T;v;x;y) (z:T. z before yv (z before xv (z = x)))
6. x : T 7. y : T 8. no_repeats(T;v)
9. (uv)
10. 0 < ||v||
11. adjacent(T;v;x;y)
12. z : T 13. z = u & (yv)
14. z:T. z before yv (z before xv (z = x))
z before x [u / v] (z = x)